package it.unisa.unibox.otherServlets;

import java.util.ArrayList;

public class UtilityFunctions {

	
	public static ArrayList<Integer> mySplit(String input){

		ArrayList<Integer> arr = new ArrayList<Integer>();

		if(input.equals("")){
			return arr;
		}
		else{
			String[] a = input.split("@");
	
	
			for(int i=0;i<a.length;i++){
				Integer it = Integer.parseInt(a[i]);
				arr.add(it);
				//System.out.print(it+"*");
	
			}
/*			System.out.println("\n\n\n");
	
			for(Integer x : arr){
				System.out.println(x+"*");
			}*/

		return arr;
		}
	}
	
	public static boolean controllaCampi(String titolo, String abstract_field, int anno, String lingua, String url){
		if(titolo.length() < 2 || titolo.length() > 120 || titolo.equals("") || !checkCaratteriSpeciali(titolo)
				|| abstract_field.length() < 2 || abstract_field.length() > 1000 || abstract_field.equals("")
				|| anno < 2000 || anno > 2014
				|| lingua.length() < 6 || lingua.length() > 20 || lingua.equals("") || !checkCaratteriSpeciali(lingua) || !checkLetter(lingua)
				|| url.length() < 2 || url.length() > 60 || url.equals("")){
			System.out.println("Controlla campi flase");
			return false;
		}
		System.out.println("Controlla campi ture");
		return true;
	}
	
	private static boolean checkCaratteriSpeciali(String s){
		char ch;
		for(int i=0; i<s.length();i++){
			ch = s.charAt(i);
			if(!Character.isLetterOrDigit(ch) && !Character.isWhitespace(ch))
				return false;
		}
		
		return true;
	}
	
	private static boolean checkLetter(String s){
		char ch;
		for(int i=0; i<s.length();i++){
			ch = s.charAt(i);
			if(!Character.isLetter(ch) && !Character.isWhitespace(ch))
				return false;
		}
		
		return true;
	}
	
	public static boolean checkTitolo(String s){
		
		char ch = s.charAt(0);
		
		if(!Character.isLetterOrDigit(ch) && !Character.isWhitespace(ch))
			return false;
		
		return true;
	}
}
